package com.castle.fortress.admin.rule.list.dto;

import com.castle.fortress.admin.rule.rule.entity.RuleEntity;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import java.util.Date;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
 * 规则清单信息表 实体类
 *
 * @author
 * @since 2025-04-22
 */
@Data
@ApiModel(value = "ruleList对象", description = "规则清单信息表")
public class RuleListDto implements Serializable {
	private static final long serialVersionUID = 1L;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "清单ID")
	@JsonProperty("id")
	private Long id;
	@ApiModelProperty(value = "列表名称")
	@JsonProperty("listName")
	private String listName;
	@ApiModelProperty(value = "列表简介")
	@JsonProperty("listBrief")
	private String listBrief;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "创建时间")
	@JsonProperty("createTime")
	private Date createTime;
	@DateTimeFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@JsonFormat(
		pattern = "yyyy-MM-dd HH:mm:ss"
	)
	@ApiModelProperty(value = "修改时间")
	@JsonProperty("updateTime")
	private Date updateTime;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "创建人")
	@JsonProperty("createUser")
	private Long createUser;
	@JsonSerialize(using = ToStringSerializer.class)
	@ApiModelProperty(value = "修改人")
	@JsonProperty("updateUser")
	private Long updateUser;
	@ApiModelProperty(value = "删除状态：2-未删除，1-已删除")
	@JsonProperty("isDeleted")
	private Boolean isDeleted;
	@ApiModelProperty(value = "规则数量")
	@JsonProperty("count")
	private Integer count;
	@ApiModelProperty(value = "规则列表")
	@JsonProperty("rules")
	private List<RuleEntity> rules;
	@ApiModelProperty(value = "规则ID列表")
	@JsonProperty("ruleList")
	private List<Long> ruleList;
}
